package com.piggy.logi.sys.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.piggy.common.core.annotation.Excel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.math.BigDecimal;

@Data
@NoArgsConstructor
@Accessors(chain = true)
public class LogiLineStatisticsVo {

    /** 部门id */
    @ApiModelProperty("部门id")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long deptId;

    /** 线路id */
    @ApiModelProperty("线路id")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long lineId;

    /** 线路 */
    @Excel(name = "线路")
    @ApiModelProperty(value = "线路")
    private String lineName;

    /** 区域范围 */
    @Excel(name = "区域范围")
    @ApiModelProperty(value = "区域范围")
    private String lineDistrict;

    /** 发车车次数 */
    @Excel(name = "发车车次数")
    @ApiModelProperty(value = "发车车次数")
    private Integer carrierNum;

    /** 完成承运量（吨） */
    @Excel(name = "完成承运量（吨）")
    @ApiModelProperty(value = "完成承运量（吨）")
    private BigDecimal finishCarrierQuality = BigDecimal.ZERO;

    /** 完成运单量 */
    @Excel(name = "完成运单量")
    @ApiModelProperty(value = "完成运单量")
    private Integer finishWaybillNum = 0;

    /** 交易额（万元） */
    @Excel(name = "交易额（万元）")
    @ApiModelProperty(value = "交易额（万元）")
    private BigDecimal tradeAmount = BigDecimal.ZERO;

    /** 提货及时率 */
    @Excel(name = "提货及时率")
    @ApiModelProperty(value = "提货及时率")
    private String deliveryTimeliness = "0%";

    /** 提货超时时长（h） */
    @Excel(name = "提货超时时长（h）")
    @ApiModelProperty(value = "提货超时时长（h）")
    private BigDecimal deliveryTimeout = BigDecimal.ZERO;

    /** 送达及时率 */
    @Excel(name = "送达及时率")
    @ApiModelProperty(value = "送达及时率")
    private String servedTimeliness = "0%";

    /** 送达超时时长（h） */
    @Excel(name = "送达超时时长（h）")
    @ApiModelProperty(value = "送达超时时长（h）")
    private BigDecimal servedTimeout = BigDecimal.ZERO;

    /** 时间范围 */
    @Excel(name = "时间范围")
    @ApiModelProperty(value = "时间范围")
    private String timeFrame;
}
